package xcmg.device.service.vo.order;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 转包单发货单head表 VO类
 */
@ToString
@Data
public class SubcontractingOutVO implements Serializable {
    private static final long serialVersionUID = -1L;
    @ApiModelProperty(value = "ID，主键", name = "id")
    private String id;
    @ApiModelProperty(value = "转包发货单号码", name = "code")
    private String code;
    @ApiModelProperty(value = "转包单ID", name = "id")
    private String subcontOrderId;
    @ApiModelProperty(value = "转包单号码", name = "subcontractingOrderCode")
    private String subcontOrderCode;
    @ApiModelProperty(value = "订单ID", name = "orderId")
    private Long orderId;
    @ApiModelProperty(value = "订单号码", name = "orderNo")
    private String orderNo;
    @ApiModelProperty(value = "到货工厂", name = "factory")
    private String factory;
    @ApiModelProperty(value = "供应商代码", name = "supplierNo")
    private String supplierNo;
    @ApiModelProperty(value = "供应商名称", name = "supplierName")
    private String supplierName;

    @ApiModelProperty(value = "供应商组织ID", name = "supplierOrgId")
    private String supplierOrgId;
    @ApiModelProperty(value = "组织ID", name = "orgId")
    private String orgId;
    @ApiModelProperty(value = "出库状态,0创建  1部分完成 2完成  3:强制结单", name = "outboundStatus")
    private Integer outboundStatus;

    @ApiModelProperty(value = "出库仓库", name = "outWarehouse")
    private String outWarehouse;
    @ApiModelProperty(value = "出库库区", name = "outArea")
    private String outArea;

    @ApiModelProperty(value = "出库库时间", name = "outTime")
    private Date outTime;
    @ApiModelProperty(value = "新增时间", name = "createdTime")
    private Date createdTime;
    @ApiModelProperty(value = "更新人", name = "updateId")
    private String createId;
    @ApiModelProperty(value = "更新时间", name = "updatedTime")
    private Date updatedTime;
    @ApiModelProperty(value = "更新人", name = "updateId")
    private String updateId;
    @ApiModelProperty(value = "备注", name = "note")
    private String note;
    @ApiModelProperty(value = "更新人", name = "updateName")
    private String updateName;
    @ApiModelProperty(value = "来源 ,0转包单  1同步订单", name = "source")
    private Integer source;
    private List<SubcontractingOutDetailVO> details;


    @ApiModelProperty(value = "转包发货单号码模糊查询", name = "codeLike")
    private String codeLike;
    @ApiModelProperty(value = "供应商模糊查询", name = "supplierLike")
    private String supplierLike;
    @ApiModelProperty(value = "转包单号码模糊查询", name = "subcontOrderCodeLike")
    private String subcontOrderCodeLike;
    @ApiModelProperty(value = "订单号码模糊查询", name = "orderNoLike")
    private String orderNoLike;
    private Date createdTimeStart;
    private Date createdTimeEnd;

    private Date outTimeStart;
    private Date outTimeEnd;
}
